/*******************************************************************************
 * 版权：北京润尼尔网络科技有限公司，保留所有版权<br>
 * 版本：v1.0.0<br>
 * 文件：UICompositeRadio.js<br>
 * 日期：2016年9月28日<br>
 * 作者: 杨顺强<br>
 * 功能：radio组件<br>
 * 
 * 修改记录：<br>
 * 日期 描述 更新功能<br>
 ******************************************************************************/
window.makeNamespace(window,"Rainier.UI.V2");

/**
 * 函数名称：Rainier.UI.V2.UICompositeRadio<br>
 * 函数功能：文字说明的横线组件<br>
 * 参数输入：<br>
 * 异常信息：<br>
 */
Rainier.UI.V2.UICompositeRadio = Rainier.UI.V2.UIComposite.extend({
	
	NAME : "Rainier.UI.V2.UICompositeRadio",
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeRadio.init<br>
	 * 函数功能：初始化横线组件<br>
	 * 参数输入：objParentComposite : UIComposite 父组件对象<br>
	 * 参数输入：objProperties:  格式按照如下方式填写
	 * {
	 * 		style	: "",		//封装radio的控件div的css样式	
	 * 	 	name 	: "",		//radio控件的name属性值
	 * 	 	value	: "",		//radio控件的value值。当选中时获取
	 * }<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	init : function(objParentComposite,objProperties){
		
		this.radio 				= null;			//当前组件中的radio控件
		if(objProperties.name){
			this.name = objProperties.name;
		}else{
			throw new Error("该组件的name属性为必设项,请修改对象参数信息");
		}
		if(objProperties.value){
			this.value = objProperties.value;
		}else{
			throw new Error("该组件的value属性为必设项,请修改对象参数信息");
		}
		this._super(objParentComposite,objProperties);
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeRadio.createComposite<br>
	 * 函数功能：组件创建函数，完成对组件的创建工作<br>
	 * 参数输入：eleParent ： 父节点Tag<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	createComposite : function(eleParent){
		this._super(eleParent);
		var newEle = this.CreateElement("div",this.m_objProperties.id,null,
						{style:"width:30px;height:30px;float:left;"});
		eleParent.append(newEle);
		var _this = this;
		//添加组件内容
		//第一步： 添加radio组件；
		var $input = null;
		if(this.name && this.value){
			$input	   = $("<input type='radio' style='vertical-align:middle;' name=''>&nbsp;");
			$input.attr("name",this.name);
			$input.attr("value",this.value);
		}else{
			throw new Error("参数错误，请重新填写对应的参数");
		}
		
		newEle.append($input);
		this.radio = $input;
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeRadio.getRadio<br>
	 * 函数功能：获取当前组件中的radio组件对象<br>
	 * 参数输入：无<br>
	 * 参数输出：无<br>
	 * 函数返回：radio 子组件<br>
	 * 异常信息：无<br>
	 */
	getRadio : function(){
		return this.radio ;
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeRadio.getRadioValue<br>
	 * 函数功能：获取当前组件中的radio控件中的值<br>
	 * 参数输入：无<br>
	 * 参数输出：无<br>
	 * 函数返回：radio组件中的值，是否被选中。<br>
	 * 异常信息：无<br>
	 */
	getRadioValue : function(){
		return this.getRadio.is(":checked");
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeRadio.setRadioValue<br>
	 * 函数功能：获取当前组件中的radio控件中的值<br>
	 * 参数输入：value boolean类型的值<br>
	 * 参数输出：无<br>
	 * 函数返回：radio组件中的值，是否被选中。<br>
	 * 异常信息：无<br>
	 */
	setRadioValue : function(value){
		return this.getRadio().attr("checked",value);
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeRadio.radioValueChanged<br>
	 * 函数功能：当radio的选中状态发生变化后，修改radio中控制的子组件的，状态，是否可用<br>
	 * 参数输入：无<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	radioValueChanged : function(){

	},
});
